Windows Phoneメモ002:ローカルデータベースの中身を見る
こんにちは。くろの(福田)です。
Windows Phone向けアプリケーションを開発する際に、分離ストレージを使うことがあると思います。
Windows Phone 7.1からはSQL Server Compact Edition(SQL Server CE)が使えるようになりました。
このSQL Server CEで作ったテーブルの中身を見る環境を準備したいと思います。その際、分離ストレージエクスプローラを使います。
(1)コマンドラインで分離ストレージエクスプローラのディレクトリに移動する
cd c:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\IsolatedStorageExplorerTool
※PATHに上記ディレクトリが追加されていた場合はこの手順はスキップ。
※上記は64bit開発環境でのデフォルトのディレクトリです。
(2)分離ストレージの中身を一覧する
VisualStudio 2010でアプリケーションを実行し、予めエミュレータにアプリケーションをデプロイしておきます。
ISETool.exe dir xd 【WMAppManifest.xmlのAppタグのProductId】 <DIR> Shared 65,536 ごにょごにょ.sdf
※アプリ側で分離ストレージのルートに「ごにょごにょ.sdf」を作成した場合。Sharedは最初から作られてるディレクトリです。
※アプリケーションがエミュレータにデプロイされていないと下記のようなエラーが表示されます。
Directory Listing Error. Reason: Application is not installed
(3)C:\などに中身をダウンロードする
ISETool.exe ts xd 【WMAppManifest.xmlのAppタグのProductId】 c:\ Download Started ... Into Folder: c:\ Download Successful Into Folder: c:\
これでc:\フォルダ直下にIsolatedStoreというフォルダができて、その中に分離ストレージの中身が保存されます。
(4)Server Explorerを開く
VisualStudio 2010を開き、Tool>Connect to Databaseを選択する。
「Choose Data Source」ダイアログが開くので、Microsoft SQL Server Compact 3.5を選択し、「Continue」ボタンをクリックする。
「Add Connection」ダイアログが表示されるので、「Database:」の部分にsdfファイルのパスを記述し、「OKボタン」をクリックする。
「Server Explorer」が開くので、データベースファイルの中身をチェックしていく。
テーブルが追加されていると、その中身を見ていくことができます。
ここでデータを作成し、エミュレータや開発実機の分離ストレージに戻してあげたりもできると思います。
おまけ:分離ストレージエクスプローラのヘルプ日本語訳
c:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\IsolatedStorageExplorerTool>ISETool.exe help コマンドラインパラメータ: <ts|rs|dir[:device-folder]> <xd|de> <Product GUID> [<desktop-path>] 解説: ts ? (take snapshot(スナップショットを撮る)) 分離ストレージの内容をデバイスからデスクトップにダウンロードする rs ? (restore snapshot(スナップショットを戻す)) 分離ストレージの内容をデスクトップからデバイスにアップロードする dir? (list directory(ディレクトリを一覧する)) デバイスのフォルダか(指定がなければ)ルートにあるコンテンツを一覧する xd ? エミュレータ de ? デバイス Product GUID ? (product ID(プロダクトID)) プロジェクトのWMAppManifest.xmlにあります desktop-path - ダウンロードやアップロードの際のデスクトップのパス 例:下記コマンドラインパラメータはC:\data\myfilesからエミュレータへファイルとディレクトリをアップロードします。 実行しているアプリケーションのProduct GUID: f8ce6878-0aeb-497f-bcf4-65be961d4bba ts xd f8ce6878-0aeb-497f-bcf4-65be961d4bba C:\data\myfiles 下記コマンドラインパラメータはエミュレータの\My Folder\Images\にあるコンテンツを一覧します。 dir:"\My Folder\Images\" xd f8ce6878-0aeb-497f-bcf4-65be961d4bba
おしまい